package net.ericaro.neojavagen.interfaces ;
import net.ericaro.neojavagen.interfaces.DefaultValue;
import net.ericaro.neojavagen.interfaces.AbstractMethodModifiers;
import net.ericaro.neojavagen.packages.JavadocComment;
import net.ericaro.neojavagen.interfaces.AnnotationTypeElementDeclaration;
import net.ericaro.neojavagen.types.Identifier;
import net.ericaro.neojavagen.types.Type;
import net.ericaro.neojavagen.interfaces.Annotations ;

/**
* *<pre> NormalAnnotationDeclaration :
    JavadocComment? Annotations? AbstractMethodModifiers? Type Identifier ( ) DefaultValue? ;
</pre>
*/
public class NormalAnnotationDeclaration  implements AnnotationTypeElementDeclaration {

JavadocComment javadoccomment;
Annotations annotations;
AbstractMethodModifiers abstractmethodmodifiers;
Type type;
Identifier identifier;
DefaultValue defaultvalue ;

public NormalAnnotationDeclaration( JavadocComment javadoccomment, Annotations annotations, AbstractMethodModifiers abstractmethodmodifiers, Type type, Identifier identifier, DefaultValue defaultvalue ){
	this.javadoccomment = javadoccomment; this.annotations = annotations; this.abstractmethodmodifiers = abstractmethodmodifiers; this.type = type; this.identifier = identifier; this.defaultvalue = defaultvalue ;
	}public NormalAnnotationDeclaration( Type type, Identifier identifier ){
this.type = type; this.identifier = identifier ;
}


public String toString(){
	StringBuilder stringbuilder = new StringBuilder();
	if (this.javadoccomment !=null ) stringbuilder.append( this.javadoccomment ).append(" ");
if (this.annotations !=null ) stringbuilder.append( this.annotations ).append(" ");
if (this.abstractmethodmodifiers !=null ) stringbuilder.append( this.abstractmethodmodifiers ).append(" ");
stringbuilder.append( this.type ).append(" ");
stringbuilder.append( this.identifier ).append(" ");
stringbuilder.append( "(" ).append(" ");
stringbuilder.append( ")" ).append(" ");
if (this.defaultvalue !=null ) stringbuilder.append( this.defaultvalue ).append(" ");
stringbuilder.append( ";\n" ).append(" ") ;
	return stringbuilder.toString();
}

}
